package com.cloudfun.campusshare.service;

import com.cloudfun.campusshare.common.model.dto.VerifyCodeH5LoginDTO;
import com.cloudfun.campusshare.common.model.dto.VerifyCodeLoginDTO;
import com.cloudfun.campusshare.common.model.dto.WeChatLoginDTO;
import com.cloudfun.campusshare.common.model.vo.SessionVO;
import com.cloudfun.campusshare.common.response.BaseResult;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public interface SessionService {

    /**
     * 使用手机登陆
     *
     * @param sessionVO
     * @return
     */
    BaseResult<?> loginWithPassword(SessionVO sessionVO, HttpServletRequest request, HttpServletResponse response);

    /**
     * 微信登录
     *
     * @param loginDTO
     * @param request
     * @param response
     * @return
     */
    BaseResult<?> loginByWeChat(WeChatLoginDTO loginDTO, HttpServletRequest request, HttpServletResponse response);

    /**
     * 验证码登录
     *
     * @param loginDTO
     * @param request
     * @param response
     * @return
     */
    BaseResult<?> loginByVerifyCode(VerifyCodeLoginDTO loginDTO, HttpServletRequest request, HttpServletResponse response);



    /**
     * H5验证码登录
     *
     * @param loginDTO
     * @param request
     * @param response
     * @return
     */
    BaseResult<?> loginByVerifyCode4H5(VerifyCodeH5LoginDTO loginDTO, HttpServletRequest request, HttpServletResponse response);
}
